我在有关 Python 编码指南的文档中遇到了以下 Python 源文件的标头格式:
#!/usr/bin/env python """Foobar.py: Description of what foobar does.""" __author__ = "Barack Obama" __copyright__ = "Copyright 2009, Planet Earth"
这是 Python 世界中标头的标准格式吗?我可以在标题中添加哪些其他字段/信息?Python 大师分享你对好的 Python 源代码头的指导 :-)
Foobar它是模块的所有元数据。
Foobar
第一个是模块的,在回答docstring中已经解释过了 。
docstring
如何组织我的模块(源文件)?(档案) 每个文件的第一行应该是#!/usr/bin/env python. 这使得可以将文件作为隐式调用解释器的脚本运行,例如在 CGI 上下文中。 接下来应该是带有描述的文档字符串。 如果描述很长,第一行应该是一个简短的摘要,它本身就有意义,用换行符与其余部分分开。 所有代码,包括导入语句,都应遵循文档字符串。 否则,解释器将无法识别文档字符串,并且您将无法在交互式会话(即通过obj.__doc__)或使用自动化工具生成文档时访问它。 首先导入内置模块,然后是第三方模块,然后是对路径和您自己的模块的任何更改。 特别是,对模块路径和名称的添加可能会迅速改变:将它们放在一个地方会使它们更容易找到。 接下来应该是作者信息。 此信息应遵循以下格式: __author__ = "Rob Knight, Gavin Huttley, and Peter Maxwell" __copyright__ = "Copyright 2007, The Cogent Project" __credits__ = ["Rob Knight", "Peter Maxwell", "Gavin Huttley", "Matthew Wakefield"] __license__ = "GPL" __version__ = "1.0.1" __maintainer__ = "Rob Knight" __email__ = "rob@spot.colorado.edu" __status__ = "Production" 状态通常应该是“原型”、“开发”或“生产”之一。__maintainer__应该是修复错误并在导入时进行改进的人。__credits__不同之处__author__在于__credits__包括报告错误修复、提出建议等但实际上并未编写代码的人。
如何组织我的模块(源文件)?(档案)
每个文件的第一行应该是#!/usr/bin/env python. 这使得可以将文件作为隐式调用解释器的脚本运行,例如在 CGI 上下文中。
#!/usr/bin/env python
接下来应该是带有描述的文档字符串。 如果描述很长,第一行应该是一个简短的摘要,它本身就有意义,用换行符与其余部分分开。
所有代码,包括导入语句,都应遵循文档字符串。 否则,解释器将无法识别文档字符串,并且您将无法在交互式会话(即通过obj.__doc__)或使用自动化工具生成文档时访问它。
obj.__doc__
首先导入内置模块,然后是第三方模块,然后是对路径和您自己的模块的任何更改。 特别是,对模块路径和名称的添加可能会迅速改变:将它们放在一个地方会使它们更容易找到。
接下来应该是作者信息。 此信息应遵循以下格式:
__author__ = "Rob Knight, Gavin Huttley, and Peter Maxwell" __copyright__ = "Copyright 2007, The Cogent Project" __credits__ = ["Rob Knight", "Peter Maxwell", "Gavin Huttley", "Matthew Wakefield"] __license__ = "GPL" __version__ = "1.0.1" __maintainer__ = "Rob Knight" __email__ = "rob@spot.colorado.edu" __status__ = "Production"
状态通常应该是“原型”、“开发”或“生产”之一。__maintainer__应该是修复错误并在导入时进行改进的人。__credits__不同之处__author__在于__credits__包括报告错误修复、提出建议等但实际上并未编写代码的人。
__maintainer__
__credits__
__author__
在这里,您可以获得更多信息,列出__author__、__authors__、__contact__、__copyright__、__license__、__deprecated__和作为识别的元数据。__date__``__version__
__authors__
__contact__
__copyright__
__license__
__deprecated__
__date__``__version__